import java.util.Scanner;

public class test_3_12 {

//    Y y=new Y();//1
//    public X(){//2
//        System.out.print("X");
//    }
//}
//class Y{
//    public Y(){//3
//        System.out.print("Y");
//    }
//}
//public class Z extends X{
//    Y y=new Y();//4
//    public Z(){//5
//        System.out.print("Z");
//    }
//    public static void main(String[] args) {
//        new Z();
//    }
//    public Base(String s){
//        System.out.print("B");
//    }
//}
//
//public class Derived extends Base{
//    public Derived (String s) {
//        System.out.print("D");
//    }
//    public static void main(String[] args){
//        new Derived("C");
//    }
//    Base() {
//        System.out.print("Base");
//    }
//}
//
//public class Alpha extends Base {
//
//    public static void main( String[] args ) {
//        new Alpha();//1
//        //调用父类无参的构造方法
//        new Base();//2
//    }
//    public static void main(String[] args) {
////        有父类Base，内部定义了x、y属性。有子类Sub，继承自父类Base。子类新增了一个z属性，并且定义了calculate方法，
////        在此方法内计算了父类和子类中x、y、z属性三者的乘积。请补全子类构造方法的初始化逻辑，使得该计算逻辑能够正确执行。
//        Scanner scanner = new Scanner(System.in);
//        while (scanner.hasNextInt()) {
//            int x = scanner.nextInt();
//            int y = scanner.nextInt();
//            int z = scanner.nextInt();
//            Sub sub = new Sub(x, y, z);
//            System.out.println(sub.calculate());
//        }
//    }
//
//}
//
//class Base {
//
//    private int x;
//    private int y;
//
//    public Base(int x, int y) {
//        this.x = x;
//        this.y = y;
//    }
//
//    public int getX() {
//        return x;
//    }
//
//    public int getY() {
//        return y;
//    }
//
//}
//
//class Sub extends Base {
//
//    private int z;
//
//    public Sub(int x, int y, int z) {
//        //write your code here
//        super(x, y);//调用父类构造函数初始化x和y
//        this.z=z;//初始化子类自己的z
//    }
//
//    public int getZ() {
//        return z;
//    }
//
//    public int calculate() {
//        return super.getX() * super.getY() * this.getZ();
//    }

//    static int cnt = 6;
//    static{
//        cnt += 9;
//    }
//    public static void main(String[] args){
//        System.out.println("cnt = " + cnt);
//    }
//    static{
//        cnt /=3;
//    };
    public static void main1(String[] args) {//现有一个Data类，内部定义了属性x和y，在main方法中实例化了Data类，并计算了data对象中x和y的和。但是，Data类的定义存在错误，请你将这些错误修正过来，使得main方法中的求和逻辑可以正常执行。
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            int x = scanner.nextInt();
            int y = scanner.nextInt();
            Data data = new Data(x, y);
            System.out.println(data.getX() + data.getY());
        }
    }
}
class Data {
    private int x;
    private int y;
    public Data(int x, int y) {
        this.x = x;
        this.y = y;
    }
    public int getX() {
        return x;
    }
    public int getY() {
        return y;
    }
}
